Skip to content

Initial dump of Compositions alpha implementation - #7

Merged
justinsb merged 4 commits into
cloud-native-compositions:mainfrom
barney-s:inital
Nov 18, 2024
Merged

justinsb merged 4 commits into
cloud-native-compositions:mainfrom
barney-s:inital

Conversation

@barney-s

Copy link
Copy Markdown
Collaborator

This is the initial dump of the Compositions code that we have been demoing in the weekly meetings.
Source: https://github.com/GoogleCloudPlatform/k8s-config-connector/tree/master/experiments/compositions

We want to follow up with commits to:

  1. User guide
  2. Setup precommit tests
  3. Proposal/DesignNotes as a light weight KEP alternative

@a-hilaly
a-hilaly requested review from a-hilaly and matthchr and removed request for matthchr October 30, 2024 20:44
@barney-s

barney-s commented Oct 31, 2024 •

Copy link
Copy Markdown
Collaborator Author

#8 << user guide dump

Comment thread composition/.golangci.yml Resolved
Comment thread composition/Dockerfile Resolved
Comment thread composition/Dockerfile.inline Resolved
Comment thread composition/Dockerfile.inline Resolved
const (
Ready ConditionType = "Ready"
// Error implies the last reconcile attempt failed
Error ConditionType = "Error"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the implication that this condition is "fatal", as compared to a situation where Ready=False, but that may mean "we're just not done yet"?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Error is a catch all for any error (temporary or otherwise) when we reconcile a composition. This may be temporary errors such as unable to reach k8s server, grpc server etc. We have a separate Waiting condition value to indicate we are waiting for something (we are not done yet).

@matthchr matthchr left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't go over this with a fine-tooth comb (there's a lot), but my major comments were resolved or added to TODOs to do later.

Approved.

Comment thread composition/TODO.md Resolved
Type ExpanderType `json:"type"`

// ExpanderConfig GVK
Config ExpanderConfigGVK `json:"config"`

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this required?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is required for helm

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My point I guess is, either it should have kubeuilder:required or it should be json:omitempty.

@justinsb
justinsb merged commit 337e3a9 into cloud-native-compositions:main Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants